package com.woniuxy.educationplatform.mapper;

import com.woniuxy.educationplatform.bean.MsgTaskBean;
import org.apache.ibatis.annotations.*;

import java.util.List;

@Mapper
public interface MsgTaskMapper {

    /**
     * @author 赵扬
     * 创建时间：2020年12月10日17:57:30
     * 修改时间：2020年12月12日14:28:28
     *
     * 说明：有添加功能，查询功能，逻辑删除（修改）功能。逻辑删除稍后实现
     *
     */


    @Options(
            useGeneratedKeys = true,
            keyProperty = "id"
    )
    @Insert(value = "INSERT INTO msg_task (name_value, desc_value, gmt_create, fk_school_infoid, fk_msg_typeid) VALUES (#{nameValue},#{descValue},#{gmtCreate},#{SchoolID},#{msgTypeID})")
    //向数据库中插入数据，返回插入的ID
    int Insert(MsgTaskBean msgTask);



    //查询所有的任务, 传递一个接收筛选条件的MsgTaskBean  sql语句在xml里
    List<MsgTaskBean> selectAll(@Param("task") MsgTaskBean msgTaskBean);



    //根据任务id，查询
    @Select(value = "SELECT id, name_value, desc_value FROM msg_task WHERE id = #{ID}")
    MsgTaskBean selectByID(Long ID);


    //逻辑删除(即修改）
    @Update(value = "UPDATE msg_task SET is_deleted = 1 WHERE id = #{taskID}")
    void deleteByID(Long taskID);


    //更新任务表数据
    @Update(value = "UPDATE msg_task SET name_value = #{nameValue}, desc_value = #{descValue}, fk_school_infoid = #{SchoolID}, fk_msg_typeid = #{msgTypeID} WHERE id = #{id}")
    void updateTask(MsgTaskBean msgTaskBean);


}
